3D visualization techniques to support slicing-based program comprehension
نویسندگان
چکیده
Graphic visuals derived from reverse engineered source code have long been recognized for their impact on improving the comprehensibility of structural and behavioral aspects of large software systems and their source code. A number of visualization techniques, primarily graph-based, do not scale. Some other proposed techniques based on 3D metaphors tend to obscure important structural relationships in the program. Multiple views displayed in overlapping windows are suggested as a possible solution, which more often than not results in problems of information overload and cognitive discontinuity. In this paper, we first present a comprehensive survey of related work in program comprehension and software visualization, and follow it up with a detailed description of our research which uses program slicing for deriving program structure-based attributes and 3D-metaball-based rendering techniques to help visualization-based analysis of source code structure. Metaballs, a 3D modeling technique, has already found extensive use for representing complex organic shapes and structural relationships in biology and chemistry. We have developed a metaball software visualization system in Java3D, named MetaViz. As proof of concept, using MetaViz, we demonstrate the creation of 3D visuals that are intuitively comprehensible and communicate information about relative component complexity and coupling among components and therefore enhance comprehension of the program structure. r 2005 Elsevier Ltd. All rights reserved.
منابع مشابه
Comparison of Backward Slicing Techniques for Java
Program slicing is an important approach for debugging, program comprehension, impact analysis, etc. There are various program slicing techniques ranging from the lightweight to the more accurate but heavyweight. Comparative analyses are important for selecting the most appropriate technique. This paper presents a comparative study of four backward program slicing techniques for Java. The resul...
متن کاملA Novel Approach to Program Comprehension Process Using Slicing Techniques
The target of this research is to determine how program slicing contributes to program comprehension and to enhance its functionality by applying the slicing tree concept to its implementation. Slicing tree is a concept that refers to automatically repeating program slicing while the slicing criterion is changeable until the program decomposes into its atomic parts. Using this technique offers ...
متن کاملStatic Interprocedural Slicing of Shared Memory Parallel Programs
Software tools for program debugging, software testing, software maintenance, and program understanding have all effectively utilized static program slicing techniques. In this paper, we present an approach to extend this capability to explicitly parallel shared memory programs written using the OpenMP standard. In particular, interprocedural static program slicing of OpenMP programs is enabled...
متن کاملProgram Comprehension Assisted by Slicing and Transformation
Program slicing is a technique for program simpli cation based upon the deletion of statements which cannot a ect the values of a chosen set of variables. Because slicing extracts a subcomponent of the program concerned with some speci c computation on a set of variables, it can be used to assist program comprehension, allowing a programmer to remodularise a program according to arbitrarily sel...
متن کاملEnabling Certification through an Integrated Comprehension Approach
ion, by virtue of producing an abstract model similar to the program model, works in a manner that facilitates bottom-up comprehension. It thus forms a perfect foil for slicing by (automatically) providing program models to the analyst at specified levels of abstraction, that can be used to form the hypotheses upon which the slicing criteria are based upon. Further, the abstracted model can be ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Computers & Graphics
دوره 29 شماره
صفحات -
تاریخ انتشار 2005